278 research outputs found

    A classification of invasive patterns in AOP

    Get PDF
    Aspect-Oriented Programming (AOP) improves modularity by encapsulating crosscutting concerns into aspects. Some mechanisms to compose aspects allow invasiveness as a mean to integrate concerns. Invasiveness means that AOP languages have unrestricted access to program properties. Such kind of languages are interesting because they allow performing complex operations and better introduce functionalities. In this report we present a classification of invasive patterns in AOP. This classification characterizes the aspects invasive behavior and allows developers to abstract about the aspect incidence over the program they crosscut

    Adaptation multi-niveaux : l'infrastructure au service des applications

    Get PDF
    National audienceDe plus en plus d'applications sont construites Ă  base de services et exĂ©cutĂ©es dans des environnements large Ă©chelle, dynamiques et distribuĂ©s. La notion de "cloud" est souvent utilisĂ©e pour parler de ces environnements. Le paradigme de cloud computing correspond Ă  un ensemble de niveaux indĂ©pendants ayant chacun leurs propres objectifs. Ces objectifs sont aussi bien de garantir la qualitĂ© de service fournie aux utilisateurs que de gĂ©rer les ressources disponibles. Mais la qualitĂ© de service tout comme les ressources disponibles peuvent Ă©voluer au fil de l'exĂ©cution et les diffĂ©rents niveaux doivent s'adapter Ă  ces Ă©volutions. Du fait de leur indĂ©pendance, ces diffĂ©rents niveaux s'adaptent indĂ©pendamment les uns des autres. Pourtant si l'on considĂšre un ensemble d'adaptations s'effectuant sur des niveaux diffĂ©rents, il est possible que ces adaptations soient contradictoires ou redondantes entre elles, ne produisant pas au final l'effet escomptĂ© ou bien l'atteignant de maniĂšre non performante. Nous prĂ©sentons dans cet article ce que nous appelons adaptation multi-niveaux ainsi que l'intĂ©rĂȘt qu'elle peut avoir. Nous illustrons cet intĂ©rĂȘt sur le cas de la migration de service permettant d'adapter une application en utilisant l'infrastructure sous-jacente et ses capacitĂ©s

    SpoonEMF, une brique logicielle pour l'utilisation de l'IDM dans le cadre de la réingénierie de programmes Java5

    Get PDF
    2 iĂšme JournĂ©e sur l'IngĂ©niĂšrie DirigĂ©e par les ModĂšlesCe document prĂ©sente succinctement SpoonEMF, une brique logicielle pour l'utilisation de l'IDM dans le cadre de la rĂ©ingĂ©nierie d'applications Ă©crites en Java. L'accent dans cette courte prĂ©sentation est mis sur les cas d'utilisation possibles de cette brique logicielle et l'intĂ©rĂȘt des choix techniques retenus : le framework EMF pour l'expression du mĂ©ta-modĂšle afin de favoriser l'interopĂ©rabilitĂ© avec d'autres outils et l'intĂ©gration au sein du projet Spoon pour la dĂ©finition du mĂ©ta-modĂšle et la rĂ©utilisation d'outils comme l'analyseur syntaxique de code Java5 (parser) ou le gĂ©nĂ©rateur de code (pretty printer)

    Sparse Transfer Learning for Interactive Video Search Reranking

    Get PDF
    Visual reranking is effective to improve the performance of the text-based video search. However, existing reranking algorithms can only achieve limited improvement because of the well-known semantic gap between low level visual features and high level semantic concepts. In this paper, we adopt interactive video search reranking to bridge the semantic gap by introducing user's labeling effort. We propose a novel dimension reduction tool, termed sparse transfer learning (STL), to effectively and efficiently encode user's labeling information. STL is particularly designed for interactive video search reranking. Technically, it a) considers the pair-wise discriminative information to maximally separate labeled query relevant samples from labeled query irrelevant ones, b) achieves a sparse representation for the subspace to encodes user's intention by applying the elastic net penalty, and c) propagates user's labeling information from labeled samples to unlabeled samples by using the data distribution knowledge. We conducted extensive experiments on the TRECVID 2005, 2006 and 2007 benchmark datasets and compared STL with popular dimension reduction algorithms. We report superior performance by using the proposed STL based interactive video search reranking.Comment: 17 page

    Using Model-Driven Engineering to generate QoS Monitors from a formal specification

    Get PDF
    International audienceIn the domain of soft real-time application design, the gap between component-specification models and the im- plementations often implies that the implementations can- not fully take advantage of the specification models. To limit this gap, this paper proposes an approach to generate a QoS monitor from the timed behavior specification. To support this approach, we rely on two different component models: one focused on formal description and the other on prac- tical implementation. Those models are interconnected by model transformation, using a Model-Driven Engineering style

    Séparation des préoccupations en phase de méta-modélisation

    Get PDF
    http://www2.lifl.fr/~mullera/CoMo07.htmhttp://www2.lifl.fr/~mullera/CoMo07.htmCe document présente succinctement le problÚme de la claire séparation de la définition des différentes formes de sémantique en phase de méta-modélisation afin de permettre l'utilisation du MOF ou d'ecore pour la définition du méta-modÚle, l'utilisation d'OCL pour la définition de la sémantique statique et l'utilisation de Kermeta pour la définition de la sémantique opérationnelle. L'accent dans cette courte présentation est mis sur la justification du besoin de cette séparation et les choix techniques retenus basé sur un modÚle pivot et un mécanisme de composition de modÚles inspiré du merge d'UML

    Weaving Rules into [email protected] for Embedded Smart Systems

    Get PDF
    Smart systems are characterised by their ability to analyse measured data in live and to react to changes according to expert rules. Therefore, such systems exploit appropriate data models together with actions, triggered by domain-related conditions. The challenge at hand is that smart systems usually need to process thousands of updates to detect which rules need to be triggered, often even on restricted hardware like a Raspberry Pi. Despite various approaches have been investigated to efficiently check conditions on data models, they either assume to fit into main memory or rely on high latency persistence storage systems that severely damage the reactivity of smart systems. To tackle this challenge, we propose a novel composition process, which weaves executable rules into a data model with lazy loading abilities. We quantitatively show, on a smart building case study, that our approach can handle, at low latency, big sets of rules on top of large-scale data models on restricted hardware.Comment: pre-print version, published in the proceedings of MOMO-17 Worksho

    Une extension de Fractal pour l'AOP

    Get PDF
    National audienceNous présentons dans ce papier une maniÚre originale de représenter les préoccupations transverses au sein d'une architecture à base de composants Fractal sous forme de liaison que nous nommons liaison transverse. Cette liaison permet de représenter de maniÚre claire les intéractions entre composants et composants d'aspect qui incarnent les préoccupations transverses. Chaque préoccupation tissée à l'architecture logicielle modifie la structure en introduisant un nouveau composite contenant le composant d'aspect et l'ensemble des composants concerné par la coupe qui sont alors partagés dans ce nouveau composite. Notre représentation par liaison du tissage nous permet d'offrir une API d'introspection de coupe suffisament riche pour donner différentes vues sur l'ensemble des coupes s'appliquant sur une application

    NOTICE: A Framework for Non-functional Testing of Compilers

    Get PDF
    International audience—Generally, compiler users apply different optimizations to generate efficient code with respect to non-functional properties such as energy consumption, execution time, etc. However, due to the huge number of optimizations provided by modern compilers, finding the best optimization sequence for a specific objective and a given program is more and more challenging. This paper proposes NOTICE, a component-based framework for non-functional testing of compilers through the monitoring of generated code in a controlled sand-boxing environment. We evaluate the effectiveness of our approach by verifying the optimizations performed by the GCC compiler. Our experimental results show that our approach is able to auto-tune compilers according to user requirements and construct optimizations that yield to better performance results than standard optimization levels. We also demonstrate that NOTICE can be used to automatically construct optimization levels that represent optimal trade-offs between multiple non-functional properties such as execution time and resource usage requirements
    • 

    corecore